<?php
/**
 * 商品类型控制器
 * @author e5
 *
 */
class TypeController extends AuthController{
	private $db;
	public function __init() {
		parent::__init();
		$this->db = K("Type");
	}
	/**
	 * 类型列表
	 */
	public function index() {
		//统计总记录数
		$total = $this->db->count();
		//实例化分页类
		$page = new Page($total,7);
		//查询数据
		$typeData = $this->db->limit($page->limit())->all();
		if ($total > 7){
			$pageData = $page->show();
		}else {
			$pageData = "";
		}
		$this->assign("typeData",$typeData);
		$this->assign("pageData",$pageData);
		$this->display("type");
	}
	/**
	 * 添加类型
	 */
	public function add() {
		if (IS_POST){
			if (!$this->db->addType()) $this->error($this->db->error);
			$this->success("添加类型成功",U("index"));
		}
		$this->display("addType");
	}
	/**
	 * 编辑类型
	 */
	public function edit(){
		if (IS_POST){
			//编辑类型
			if (!$this->db->editType()) $this->error($this->db->error);
			$this->success("编辑类型成功",U("index"));
		}
		$tid = Q("get.tid",0,"intval");
		//获得原数据
		$typeData = $this->db->where("tid={$tid}")->find();
		if (empty($typeData)) $this->error("数据不存在");
		$this->assign("typeData",$typeData);
		$this->display("editType");
	}
	/**
	 * 删除类型
	 */
	public function del() {
		$tid = Q("get.tid",0,"intval");
		//判断类型是否有相对应的类型属性
		if (K("TypeAttr")->where("vshop_type_tid={$tid}")->count() > 0) $this->error("删除类型时必须先删除当前类型下面的属性");
		//判断类型是否有相对应的分类
		if (K("Category")->where("vshop_type_tid={$tid}")->count() > 0) $this->error("删除类型时必须先删除当前类型下面的分类");
		//判断类型是否有相对应的商品
		if (K("Goods")->where("vshop_type_tid={$tid}")->count() > 0) $this->error("请先删除本类型下面的商品");
		//删除类型
		if($this->db->where("tid={$tid}")->delete() != 1) $this->error("删除类型失败");
		$this->success("删除类型成功",U("index"));
	}
}